80b40852044c89e2e5333dbbfd06ca784898035f,src/me/libraryaddict/disguise/disguisetypes/TargetedDisguise.java,TargetedDisguise,addPlayer,#String#,31

Before Change


        {
            disguiseViewers.add(playername);

            if (DisguiseAPI.isDisguiseInUse(this))
            {
                DisguiseUtilities.checkConflicts(this, playername);
                DisguiseUtilities.refreshTracker(this, playername);

After Change


        if (!disguiseViewers.contains(playername)) {
            disguiseViewers.add(playername);

            if (DisguiseAPI.isDisguiseInUse(this)) {
                DisguiseUtilities.checkConflicts(this, playername);
                DisguiseUtilities.refreshTracker(this, playername);

                if (isHidePlayer() && getEntity() instanceof Player) {
                    try {
                        Player player = Bukkit.getPlayerExact(playername);

                        if (player != null) {
                            PacketContainer deleteTab = new PacketContainer(PacketType.Play.Server.PLAYER_INFO);

                            deleteTab.getPlayerInfoAction().write(0,
                                    canSee(player) ? PlayerInfoAction.REMOVE_PLAYER : PlayerInfoAction.ADD_PLAYER);
                            deleteTab.getPlayerInfoDataLists().write(0,
                                    Arrays.asList(new PlayerInfoData(ReflectionManager.getGameProfile((Player) getEntity()), 0,
                                            NativeGameMode.SURVIVAL,
                                            WrappedChatComponent.fromText(((Player) getEntity()).getDisplayName()))));

                            ProtocolLibrary.getProtocolManager().sendServerPacket(player, deleteTab);
                        }
                    }
                    catch (InvocationTargetException e) {
                        e.printStackTrace();
                    }
                }
            }